from django.apps import AppConfig


class NotificationServiceConfig(AppConfig):
    """
    通知服务应用配置
    """
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'notification_service'
    verbose_name = '通知服务'
    
    def ready(self):
        """
        应用准备就绪时的初始化操作
        """
        # 导入信号处理器
        try:
            from . import signals
        except ImportError:
            pass
        
        # 初始化通知渠道
        self._init_default_channels()
    
    def _init_default_channels(self):
        """
        初始化默认通知渠道
        """
        from .models import NotificationChannel
        
        # 创建默认的系统通知渠道
        NotificationChannel.objects.get_or_create(
            name='系统通知',
            channel_type='system',
            defaults={
                'configuration': {},
                'is_active': True,
                'rate_limit': 0,
                'retry_count': 0
            }
        )